package com.nlx.notes.module.service.system;

import com.nlx.notes.module.bean.dto.system.SystemConfigUpdateDTO;
import com.nlx.notes.module.bean.vo.system.SystemConfigVO;
import com.nlx.notes.module.entity.SystemPreferences;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * <p>
 * 用户的配置项信息 服务类
 * </p>
 *
 * @author nlx
 * @since 2025-08-24
 */
public interface ISystemPreferencesService extends IService<SystemPreferences> {

    /**
     * 获取系统参数信息
     * @param userId 用户id
     * @return SystemConfigVO
     */
    List<SystemConfigVO> getSystemConfigList(String type,Long userId);

    /**
     * 通过key查找value
     * @param userId 用户id
     * @param key key
     * @return String
     */
    String findValueByKey(Long userId, String key);

    /**
     * 更新系统参数
     * @param systemConfigUpdateDTO 入参
     * @return SystemConfigVO
     */
    SystemConfigVO updateConfigConfig(SystemConfigUpdateDTO systemConfigUpdateDTO);
}
